package 剑指Offer.easy;

import java.util.Arrays;

public class 连续子数组的最大和 {
    class Solution {
        public int maxSubArray(int[] nums) {
            int[] dp = new int[nums.length];
            dp[0] = nums[0];
            int max = dp[0];
            for (int i = 1; i < nums.length; i++) {
                if (dp[i - 1] <= 0) {
                    dp[i] = nums[i];
                } else {
                    dp[i] = nums[i] + dp[i - 1];
                }
                max = dp[i] > max ? dp[i] : max;
            }
            return max;
        }
    }
}
